package com.parktech.sun.domain.service.industryservice;

import com.parktech.sun.domain.model.industryservice.IndustryService;
import com.parktech.sun.domain.model.industryservice.IndustryServiceInfoCategory;
import com.parktech.sun.domain.model.industryservice.IndustryServiceInformation;
import com.parktech.sun.domain.repository.Page;
import com.parktech.sun.domain.service.BaseService;

import java.util.List;

/**
 * User: Think
 * Date: 11-1-12
 * Time: 下午10:49
 */
public interface IndustryServiceService extends BaseService<IndustryService> {

    Page search(String title, Page page);

    Page searchInformation(String title, Long category, Integer publishStatus, Page page);

    IndustryServiceInformation getInformationById(Long industryServiceInformationId);

    void clearThenSaveOrUpdateInformation(IndustryServiceInformation industryServiceInformation);

    void saveOrUpdateInformation(IndustryServiceInformation industryServiceInformation);

    Page searchCategory(String title, Long category, Page page);

    void clearThenSaveOrUpdateCategory(IndustryServiceInfoCategory industryCategory);

    IndustryServiceInfoCategory getByCategoryId(Long aLong);

    void saveOrUpdateCategory(IndustryServiceInfoCategory industryCategory);

    List<IndustryServiceInfoCategory> getWithSubCategoryAndTop4Info(Long industryServiceId);

    Page pageInfoBy(Long industryServiceId, Long subCategoryId, Page page);

    List<IndustryServiceInformation> listTop7PolicyInfo();

    List<IndustryServiceInformation> listTop6RequirementInfo();

    Page pageByPolicy(Page page);

    Page pageByRequirement(Page page);
}
